.\" Copyright 2006-2008 Sun Microsystems, Inc.
.\" Copyright (c) 1996 Thinking Machines Corporation
.TH MPI_File_sync 3 "#OMPI_DATE#" "#PACKAGE_VERSION#" "#PACKAGE_NAME#"
.SH NAME
\fBMPI_File_sync\fP \- Makes semantics consistent for data-access operations (collective). 

.SH SYNTAX
.ft R
.nf
C Syntax
    #include <mpi.h>
    int MPI_File_sync(MPI_File \fIfh\fP)

.fi
.SH Fortran Syntax
.nf
    INCLUDE 'mpif.h'
    MPI_FILE_SYNC(\fIFH\fP, \fIIERROR\fP)
        	 INTEGER	  FH, IERROR

.fi
.SH C++ Syntax
.nf
#include <mpi.h>
void MPI::File::Sync()

.fi
.SH INPUT PARAMETER
.ft R
.TP 1i
fh
File handle (handle).

.SH OUTPUT PARAMETER
.ft R
.TP 1i
IERROR
Fortran only: Error status (integer). 

.SH DESCRIPTION
.ft R
Calling MPI_File_sync with
.I fh
causes all previous writes to 
.I fh
by the calling process to be written to permanent storage. If other processes have made updates to permanent storage, then all such updates become visible to subsequent reads of 
.I fh
by the calling process.
.sp
MPI_File_sync is a collective operation. The user is responsible for ensuring that all nonblocking requests on 
.I fh
have been completed before calling MPI_File_sync. Otherwise, the call to MPI_File_sync is erroneous.

.SH ERRORS
Almost all MPI routines return an error value; C routines as the value of the function and Fortran routines in the last argument. C++ functions do not return errors. If the default error handler is set to MPI::ERRORS_THROW_EXCEPTIONS, then on error the C++ exception mechanism will be used to throw an MPI:Exception object.
.sp
Before the error value is returned, the current MPI error handler is
called. For MPI I/O function errors, the default error handler is set to MPI_ERRORS_RETURN. The error handler may be changed with MPI_File_set_errhandler; the predefined error handler MPI_ERRORS_ARE_FATAL may be used to make I/O errors fatal. Note that MPI does not guarantee that an MPI program can continue past an error.  


